1. Field of the Invention
The present invention relates to an information processing method and apparatus, a recording medium, and a program. In particular, the present invention relates to an information processing method and apparatus, a recording medium, and a program for improving efficiency in developing a user interface (UI) program using a state transition diagram.
2. Description of the Related Art
Software development tools that aid in development of application software programs are becoming increasingly widespread. For example, there is a software development tool that aids in object-oriented program development (see, for example, Japanese Patent Laid-open No. Hei 6-110767 (corresponding U.S. Pat. No. 5,761,493)).
In addition, there has been proposed a software development tool for a user interface (UI) of an application software program which uses a state transition diagram typified by a unified modeling language (UML).
The state transition diagram shows a set of states, and for each of the states, a logical description of an operation to be executed therein is provided. The state transition diagram also shows, regarding each of the states, a destination of a transition that will be triggered when a predetermined event occurs in that particular state. The aforementioned software development tool for a UI of an application software program displays a program in the form of a state transition diagram, and a user's manipulation of the displayed state transition diagram causes a change in the program so as to reflect the user's manipulation of the state transition diagram, whereby edition of the program is achieved.
During the above-described edition of the state transition diagram, the user may perform an operation of drawing a “transition” (i.e., a state transition line) from a state frame representing a first state toward a state frame representing a second state in order to indicate that occurrence of a predetermined event in the first state causes a transition to the second state.
In known software development tools, the transition is drawn in the following manner: first, a pointer is moved using a mouse or the like onto a state frame representing a state that is to be a transition starting point, and a right or left button, for example, is depressed to set the position of the state frame that is to be the transition starting point; and then, with the button kept held down, the pointer is moved by moving the mouse onto a state frame representing a state that is to be a transition end point, and the button is released with the pointer located within the state frame of the desired transition destination state. As a result, the state frame of the transition starting state and the state frame of the transition destination state are linked by the transition.
The above operation, however, may cause a problem in the case where a long transition need be drawn or where the drawing of a transition involves window scrolling. This is because, in such cases, an accidental release of the button is easy to occur while moving the mouse. This may result in an accidental release of the button before the pointer reaches a desired position, resulting in failure to draw a desired transition.
As another method for drawing a transition, there has been proposed a function of drawing a line segment between desired starting and end points, which are designated by clicking, for example, the right or left button of the mouse after moving the pointer to the respective points using the mouse. In this method, in which the starting and end points are simply designated, a user may sometimes be confused as to whether he or she is now supposed to be trying to designate the starting point or the end point by moving the pointer and clicking the mouse button. Moreover, in the case where the user attempts to draw a plurality of transitions at a time, the user may have to rely on his or her own memory to recognize the current situation, which may lead to failure to draw the right transitions.
An advantage of the present invention is to reduce the likelihood of such failure by, in particular, enabling accurate drawing of a line segment such as a transition on the state transition diagram, and thereby improve the efficiency in program development.